﻿using System;
using System.Data;
using System.Windows.Forms;
using CentroVentas.Clases;
using CentroVentas.Clases.Utiles;

namespace CentroVentas.Funciones.Administracion
{
    public partial class FrmPermisos : Form
    {
        private int id = 0;

        public FrmPermisos()
        {
            InitializeComponent();
        }

        private void FrmPermisos_Load(object sender, EventArgs e)
        {
            DataSet dset = new DataSet();
            dset = Clases.Usuarios.GetUsuariosComboBox();
            cbousuario.DataSource = dset.Tables["usuarios"];
            cbousuario.DisplayMember = dset.Tables["usuarios"].Columns["rut"].ColumnName;
            cbousuario.ValueMember = dset.Tables["usuarios"].Columns["id"].ColumnName;

            Permisos.CrearEstructura(Arbol);

            cbousuario.SelectedIndex = 0;
            cbousuario_SelectedIndexChanged(null, EventArgs.Empty);
            cboEstado.Enabled = false;
            btnConfirmar.Enabled = false;
        }

        enum valores
        {
            Prohibir = 0,
            Permitir = 1
        }
        private void Arbol_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
        {
           
        }

        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            if (cboEstado.SelectedValue.ToString() == "Permitir") Permisos.SetValorPermiso(id, Permisos.GetIdFuncion(Arbol.SelectedNode.Name.ToString()), 1);
            if (cboEstado.SelectedValue.ToString() == "Prohibir") Permisos.SetValorPermiso(id, Permisos.GetIdFuncion(Arbol.SelectedNode.Name.ToString()), 0);

            Utilidades.mensaje(TipoMensaje.OK, "Datos actualizados", 0);
        }

        private void cbousuario_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cbousuario.SelectedValue.ToString() == "System.Data.DataRowView")
            {
            }
            else
            {
                id = Convert.ToInt32(cbousuario.SelectedValue.ToString());
                Clases.Usuarios usu = new Clases.Usuarios(id);
                txtusuario.Text = usu.NombreUsuario;
                txtTipoUsuario.Text = Clases.Usuarios.GetTipoUsuario(usu.TipoUsuario);
                
                //if (string.IsNullOrEmpty(Arbol.SelectedNode.Name.ToString()))
                //{
                //    cboEstado.DataSource = Enum.GetValues(typeof(valores));
                //    if (Permisos.getPermiso(id, Arbol.SelectedNode.Name.ToString()))
                //    {
                //        cboEstado.SelectedIndex = 1;
                //    }
                //    else
                //    {
                //        cboEstado.SelectedIndex = 0;
                //    }
                //}
            }
        }

        private void Arbol_AfterSelect(object sender, TreeViewEventArgs e)
        {
            if (!String.IsNullOrWhiteSpace(e.Node.Name.ToString()))
            {

                cboEstado.Enabled = true;
                btnConfirmar.Enabled = true;
                cboEstado.DataSource = Enum.GetValues(typeof(valores));
                if (Permisos.getPermiso(id, Arbol.SelectedNode.Name.ToString()))
                {
                    cboEstado.SelectedIndex = 1;
                }
                else
                {
                    cboEstado.SelectedIndex = 0;
                }



                txtDescripcion.Text = Permisos.GetDescripcionFuncion(e.Node.Name);
            }
        }

       

        

   

        

        

     

        
    }
}
